home *** CD-ROM | disk | FTP | other *** search
/ MacHack 2000 / MacHack 2000.toast / pc / The Hacks / Genie / Projects / Pedestal / Source / Includes / PedViewScroller.hh < prev    next >
Encoding:
Text File  |  2000-06-24  |  1.2 KB  |  51 lines

  1. /*    ==================
  2.  *    PedViewScroller.hh
  3.  *    ==================
  4.  *    
  5.  *    Implemented by PedViewScroller.cc
  6.  */
  7.  
  8. #pragma once
  9.  
  10. #include "PedViewSub.hh"
  11.  
  12. class PedPane;
  13. class PedScrollbar;
  14.  
  15. class PedViewScroller : public PedViewSub {
  16. public:
  17.     PedViewScroller(PedPaneSubView &inSuperPane);
  18.     virtual ~PedViewScroller();
  19.     
  20.     virtual void Dispose();
  21.     
  22.     virtual void GetFrame(Rect &outFrame);
  23.     virtual void GetAperture(Rect &outAperture) = 0;
  24.     virtual void GetScrollPos(Point &outPos) = 0;
  25.     virtual void SetScrollbarPresence(short inAxis, bool inPresent);
  26.     virtual PedPane *Pane() = 0;
  27.     
  28.     virtual void Open();
  29.     virtual void Close();
  30.     virtual void Activate();
  31.     virtual void Deactivate();
  32.     
  33.     virtual void Resize(short inWidth, short inHeight);
  34.     virtual void Calibrate();
  35.     virtual void DrawContent();
  36.     virtual long Message(long inMsgCode, void *inData);
  37.     virtual void NotifyScrolledTo(short inH, short inV);
  38.     virtual void Scroll(short inH, short inV, bool inUpdate) = 0;
  39.     
  40.     // Event processing
  41.     virtual void DispatchNullEvent(EventRecord &inEvent);
  42.     virtual void DispatchClickEvent(EventRecord &inEvent);
  43.     virtual void DispatchKey(EventRecord &inEvent);
  44.     
  45. protected:
  46.     virtual PedPane *MyPane() = 0;
  47.     
  48. protected:
  49.     PedScrollbar *mScrollV, *mScrollH;
  50. };
  51.